// 蜂窝蜜造平台生成代码，如手工更改，请添加到 .beeignore 忽略生成

package com.fowo.api.model.tmp.tiktok.order;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import java.io.Serializable;
import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.Setter;

/**
 * TmpTiktokOrder 列表项类
 */
@Getter
@Setter
@Schema(title = "Tiktok订单临时表 列表项")
public class TmpTiktokOrderItemVo implements Serializable {

  /**
   * 编号
   */
  @Schema(title = "编号")
  private Long id;

  /**
   * 创建时间
   */
  @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
  @Schema(title = "创建时间")
  private java.util.Date createTime;

  /**
   * 创建人
   */
  @Schema(title = "创建人")
  private Long createUser;

  /**
   * 更新时间
   */
  @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
  @Schema(title = "更新时间")
  private java.util.Date lastUpdateTime;

  /**
   * 更新人
   */
  @Schema(title = "更新人")
  private Long lastUpdateUser;

  /**
   * 删除标记
   */
  @Schema(title = "删除标记")
  private Boolean delFlag;

  /**
   * 订单号
   */
  @Schema(title = "订单号")
  private String orderId;

  /**
   * 订单状态
   */
  @Schema(title = "订单状态")
  private String status;

  /**
   * 物流商名称
   */
  @Schema(title = "物流商名称")
  private String shippingProvider;

  /**
   * 物流商ID
   */
  @Schema(title = "物流商ID")
  private String shippingProviderId;

  /**
   * 支付时间
   */
  @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
  @Schema(title = "支付时间")
  private java.util.Date paidTime;

  /**
   * 卖家留言
   */
  @Schema(title = "卖家留言")
  private String buyerMessage;

  /**
   * 货币
   */
  @Schema(title = "货币")
  private String currency;

  /**
   * 订单商品总额
   */
  @Schema(title = "订单商品总额")
  private java.math.BigDecimal subTotal;

  /**
   * 支付运费
   */
  @Schema(title = "支付运费")
  private java.math.BigDecimal shippingFee;

  /**
   * 卖方折扣金额
   */
  @Schema(title = "卖方折扣金额")
  private java.math.BigDecimal sellerDiscount;

  /**
   * 平台折扣金额
   */
  @Schema(title = "平台折扣金额")
  private java.math.BigDecimal platformDiscount;

  /**
   * 买方支付金额
   */
  @Schema(title = "买方支付金额")
  private java.math.BigDecimal totalAmount;

  /**
   * 产品原价总额
   */
  @Schema(title = "产品原价总额")
  private java.math.BigDecimal originalTotalProductPrice;

  /**
   * 折扣前运费
   */
  @Schema(title = "折扣前运费")
  private java.math.BigDecimal originalShippingFee;

  /**
   * 卖方折扣运费
   */
  @Schema(title = "卖方折扣运费")
  private java.math.BigDecimal shippingFeeSellerDiscount;

  /**
   * 平台折扣运费
   */
  @Schema(title = "平台折扣运费")
  private java.math.BigDecimal shippingFeePlatformDiscount;

  /**
   * 税款总额
   */
  @Schema(title = "税款总额")
  private java.math.BigDecimal tax;

  /**
   * 小订单费
   */
  @Schema(title = "小订单费")
  private java.math.BigDecimal smallOrderFee;

  /**
   * 运费税
   */
  @Schema(title = "运费税")
  private java.math.BigDecimal shippingFeeTax;

  /**
   * 商品税
   */
  @Schema(title = "商品税")
  private java.math.BigDecimal productTax;

  /**
   * RDF(零售配送费)
   */
  @Schema(title = "RDF(零售配送费)")
  private java.math.BigDecimal retailDeliveryFee;

  /**
   * 完整的收件人地址信息
   */
  @Schema(title = "完整的收件人地址信息")
  private String fullAddress;

  /**
   * 收件人手机号
   */
  @Schema(title = "收件人手机号")
  private String phoneNumber;

  /**
   * 收件人名称
   */
  @Schema(title = "收件人名称")
  private String name;

  /**
   * 邮编号码
   */
  @Schema(title = "邮编号码")
  private String postalCode;

  /**
   * 详细地址
   */
  @Schema(title = "详细地址")
  private String addressDetail;

  /**
   * 区域编码
   */
  @Schema(title = "区域编码")
  private String regionCode;

  /**
   * 街道地址1
   */
  @Schema(title = "街道地址1")
  private String addressLine1;

  /**
   * 街道地址2
   */
  @Schema(title = "街道地址2")
  private String addressLine2;

  /**
   * 街道地址3
   */
  @Schema(title = "街道地址3")
  private String addressLine3;

  /**
   * 街道地址4
   */
  @Schema(title = "街道地址4")
  private String addressLine4;

  /**
   * 国家
   */
  @Schema(title = "国家")
  private String country;

  /**
   * 州
   */
  @Schema(title = "州")
  private String addressState;

  /**
   * 县
   */
  @Schema(title = "县")
  private String addressCounty;

  /**
   * 市
   */
  @Schema(title = "市")
  private String addressCity;

  /**
   * 区
   */
  @Schema(title = "区")
  private String addressDistrict;

  /**
   * 镇
   */
  @Schema(title = "镇")
  private String addressTown;

  /**
   * 配送地址
   */
  @Schema(title = "配送地址")
  private String dropOffLocation;

  /**
   * 取消原因
   */
  @Schema(title = "取消原因")
  private String cancelReason;

  /**
   * 取消请求发起者
   */
  @Schema(title = "取消请求发起者")
  private String cancellationInitiator;

  /**
   * 跟踪号
   */
  @Schema(title = "跟踪号")
  private String trackingNumber;

  /**
   * 卖家发货的时间
   */
  @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
  @Schema(title = "卖家发货的时间")
  private java.util.Date rtsTime;

  /**
   * 平台指定的最晚发货时间
   */
  @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
  @Schema(title = "平台指定的最晚发货时间")
  private java.util.Date rtsSlaTime;

  /**
   * 平台指定的最晚揽收时间
   */
  @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
  @Schema(title = "平台指定的最晚揽收时间")
  private java.util.Date ttsSlaTime;

  /**
   * 订单自动取消时间
   */
  @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
  @Schema(title = "订单自动取消时间")
  private java.util.Date cancelOrderSlaTime;

  /**
   * 包裹ids
   */
  @Schema(title = "包裹ids")
  private String packageIds;

  /**
   * 是否更新收件人地址
   */
  @Schema(title = "是否更新收件人地址")
  private Boolean hasUpdatedRecipientAddress;

  /**
   * 买方用户ID
   */
  @Schema(title = "买方用户ID")
  private String userId;

  /**
   * 指示订单是合并还是拆分
   */
  @Schema(title = "指示订单是合并还是拆分")
  private String splitOrCombineTag;

  /**
   * 发货方式
   */
  @Schema(title = "发货方式")
  private String fulfillmentType;

  /**
   * 卖家备注
   */
  @Schema(title = "卖家备注")
  private String sellerNote;

  /**
   * 仓库编号
   */
  @Schema(title = "仓库编号")
  private String warehouseId;

  /**
   * 付款方式名称
   */
  @Schema(title = "付款方式名称")
  private String paymentMethodName;

  /**
   * 配送方式
   */
  @Schema(title = "配送方式")
  private String shippingType;

  /**
   * 物流方式名称
   */
  @Schema(title = "物流方式名称")
  private String deliveryOptionName;

  /**
   * 物流方式ID
   */
  @Schema(title = "物流方式ID")
  private String deliveryOptionId;

  /**
   * 最晚交货时间
   */
  @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
  @Schema(title = "最晚交货时间")
  private java.util.Date deliverySlaTime;

  /**
   * 是否货到付款
   */
  @Schema(title = "是否货到付款")
  private Boolean isCod;

  /**
   * 是否为示例订单
   */
  @Schema(title = "是否为示例订单")
  private Boolean isSampleOrder;

  /**
   * 需要上传发票
   */
  @Schema(title = "需要上传发票")
  private String needUploadInvoice;

  /**
   * 买家电子邮件地址
   */
  @Schema(title = "买家电子邮件地址")
  private String buyerEmail;

  /**
   * 发票号码
   */
  @Schema(title = "发票号码")
  private String cpf;

  /**
   * 是否暂定订单
   */
  @Schema(title = "是否暂定订单")
  private Boolean isOnHoldOrder;

  /**
   * 是否待处理取消订单
   */
  @Schema(title = "是否待处理取消订单")
  private Boolean isBuyerRequestCancel;

  /**
   * 买方发起取消时间
   */
  @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
  @Schema(title = "买方发起取消时间")
  private java.util.Date requestCancelTime;

  /**
   * 最晚发货时间
   */
  @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
  @Schema(title = "最晚发货时间")
  private java.util.Date deliveryOptionRequiredDeliveryTime;

  /**
   * 最晚揽收时间
   */
  @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
  @Schema(title = "最晚揽收时间")
  private java.util.Date shippingDueTime;

  /**
   * 最晚运送时间
   */
  @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
  @Schema(title = "最晚运送时间")
  private java.util.Date collectionDueTime;

  /**
   * 最晚送达时间
   */
  @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
  @Schema(title = "最晚送达时间")
  private java.util.Date deliveryDueTime;

  /**
   * 揽收时间
   */
  @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
  @Schema(title = "揽收时间")
  private java.util.Date collectionTime;

  /**
   * 派送时间
   */
  @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
  @Schema(title = "派送时间")
  private java.util.Date deliveryTime;

  /**
   * 取消时间
   */
  @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
  @Schema(title = "取消时间")
  private java.util.Date cancelTime;

  /**
   * 店铺id
   */
  @Schema(title = "店铺id")
  private Long sid;

  /**
   * 工作流状态
   */
  @Schema(title = "工作流状态")
  private Integer wfStatus;
}
